[アップデート] AWS LambdaがRuby 2.7をサポートしました!
こんにちは。サービスグループの武田です。
AWS LambdaがランタイムとしてRuby 2.7をサポートしました!
AWS Lambda now supports Ruby 2.7
さっそく試してみました。
Ruby 2.7のこと
Ruby 2.7は昨年(2019年)の12月25日にリリースされました。表面的な変更としてはパターンマッチの導入とキーワード引数の変更でしょうか。REPLがめっちゃ強くなったので、興味がある方は試してみてください。
Lambdaで動かしてみた
それではマネジメントコンソールでLambdaのページを開き、新しい関数を作成します。作成時のウィザードでランタイムを選択しますが、プルダウンにRuby 2.7
が見つかりますね。
実行するプログラムですが、せっかくなのでパターンマッチングを試してみましょう。次のコードを貼り付けます。
require 'json' def lambda_handler(event:, context:) json = <<END { "name": "Alice", "age": 30, "children": [{ "name": "Bob", "age": 2 }] } END case JSON.parse(json, symbolize_names: true) in {name: "Alice", children: [{name: "Bob", age: age}]} return { statusCode: 200, body: JSON.generate(age) } end { statusCode: 200, body: JSON.generate('Hello from Lambda!') } end
準備ができたら適当なテストイベントを設定してテストを実行してみます。
ちゃんと実行されました!
まとめ
Lambdaがサポートしているひとつ前のバージョンはRuby 2.5です。2.5のEOL(End of Life)はまだ未定ですが、早ければ2021年3月になると思われます。直前になって慌てるようなことのないようにしたいですね。